package com.kc.business.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import javax.persistence.Id;
import javax.persistence.Table;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.time.LocalDateTime;

/**
 * FileName: KcHistoricalFigure
 * Author:   TP
 * Date:     2020-11-09 14:44
 * Description: 历史人物信息表
 */
@Data
@Table(name = "kc_historical_figure")
public class KcHistoricalFigure {

    @Id
    private Integer id;

    /**
     * 历史人物名称
     */
    @NotBlank(message = "历史人物名称不能为空")
    @Size(max = 32, message = "历史人物名称应在[1～32]个字符之间")
    private String historicalFigureName;

    /**
     * 历史人物头像
     */
    @NotBlank(message = "历史人物头像不能为空")
    @Size(max = 128, message = "历史人物名称应在[1～128]个字符之间")
    private String historicalFigureIcon;

    /**
     * 历史人物简介
     */
    @NotBlank(message = "历史人物简介不能为空")
    @Size(max = 1024, message = "历史人物简介应在[1～1024]个字符之间")
    private String historicalFigureDesc;

    /**
     * 状态（0：禁用 1：启用）
     */
    @NotNull(message = "状态不能为空")
    private Integer status;

    /**
     * 创建时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;

    /**
     * 创建人
     */
    private String createBy;

    /**
     * 修改时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;

    /**
     * 修改人
     */
    private String updateBy;

}
